package com.ruoyi.provider.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 定损报批信息
 * @TableName ahct_define_damage - Code
 * @author Wang RuLong
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value ="ahct_define_damage")
public class AhctDefineDamageCode extends BaseEntity implements Serializable  {
    /**
     * 主键id
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 案件号
     */
    private String case_number;

    /**
     * 物损方名称
     */
    private String damage_customer_name;


    /**
     * 1.工程机械类 
       2.房屋建筑类
       3.道路设施类
       4.电力/通讯设施类
       5.园林绿化类
       6.庄稼食品类
       7.电器设备类
       8.财产险物损类
     */
    private Integer damage_type;

    /**
     * 施工费用
     */
    private BigDecimal construction_amount;

    /**
     * 详细地址
     */
    private BigDecimal write_off_price;

    /**
     * 是否免修 1.是 0.否
     */

    private String province;

    private String city;

    private String area;

    private String accident_address;

    /**
     * 现场查勘员
     */
    private String surveyer;

    /**
     * 1.正在定损 2.已定损待审核 3.审核通过
     */
    private Integer status;

    /**
     * 逻辑删除
     */
    private Integer deleted;

    /**
     * 创建者
     */
    private String create_by;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date create_time;

    /**
     * 更新者
     */
    private String update_by;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date update_time;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    private List<String> address_code;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 开户行
     */
    private String opening_bank;

    /**
     * 银行卡号
     */
    private String bank_account_number;

    /**
     * 总计金额
     */
    private BigDecimal total_amount;

    /**
     * 税金
     */
    private BigDecimal taxes;

    /**
     * 税率
     */
    private Integer tax_rate;

    /**
     * 保险公司
     */
    private String insurer;

    /**
     * 车牌号
     */
    private String car_number;
}